package by.vkhalko.asamo.services;

import java.util.List;

import org.springframework.transaction.annotation.Transactional;

import by.vkhalko.asamo.datamodel.Company;
import by.vkhalko.asamo.datamodel.Order;
import by.vkhalko.asamo.datamodel.Person;
import by.vkhalko.asamo.datamodel.Status;

public interface OrderService {
	Order get(Long id);

	@Transactional
	void saveOrUpdate(Order order);

	@Transactional
	void delete(Order order);

	@Transactional
	void deleteAll();

	List<Order> getAllOrders();

	List<Order> getAllByCompany(Company company);

	List<Order> getAllByPerson(Person person);

	List<Order> getAllByStatus(Status status);

}
